................................
                                                                    ................................
                                                .     .             ... ............................
                                              ..     ...                ............................
                                            .::---::.....              .............................
                                      ..::-==++*****=----:. ..   ...   .............................
                                  .:-++*******#######*****=:.......    .............................
                               .:=+**#******###########*#***+-:::..    .............................
                             .:=+**##****####################*+=-:.    .............................
                           .:=+**##****#################*********+=:.  .............................
                          .=++*******################****######***+=-.. ............................
                         :+*********#**############****##%#######***=:. ............................
                        :+*****++******###########*##**####*****####**-.............................
                       .=++*++++++*****##*****#####*********++++*******-............................
                      .-+++****+++*+*****************++++++++++++*******-...........................
                     .-+*++***+++++++++++++++++++++++++++======++++*##+**-..........................
                     -+***+**++++++==============================+++*#*+*+:.........................
                    .+++*+**++++++===--===========================++***+**=.........................
                    :++**+****+======---=--=======================++***++*+:........................
                    -++*****++==----------============-============+***+++-.........................
                   .-++*****+==-:-:-::::-------===------===========+***+++:.........................
                   .:==+****+---::::::::::--------------===========+***++=..........................
                    ..-+***++=----::::::--:----------====+++++++++==+**++:......................::::
                      .-+++++=--------=======-----===+++**+++++++++=+**+=......................:::::
                    .. .-+++++---====++++++++=----==++*******++++++==**+=:.................:::::::::
                    .   .=++++--=====++****++=--:-=++***+**#*++*++===+*+++-...............::::::::::
                    . ...-++*+--===+*+**#*++=-----=+++*++++===========**+==..............:::::::::::
                    ... .-=+++----===-==++===-----=++++++=======-=====+*==+:............::::::::::::
                    ... .--+*+-------:------------=++++++====---======+*+=+:............::::::::::::
                      . .::=*=---:::::------------=++++++====-=========*+++:...........:::::::::::::
                      ...---+=---:::::--::--------=++++++=============++**+:..........::::::::::::::
                      . .---==----::::-::-:-------==++++++============++*++:..........::::::::::::::
                         :-===-----::::::----------==+++++++==========++++=...........::::::::::::::
                         .--===----::--------------==++++++++========+++==:...........::::::::::::::
                          :--==--------------=+====+++***+++++======++++==............::::::::::::::
                          .---==--------------====+++*****++++++===++*++=:...............:::::::::::
                           :-:====-----=======+++++++**********++++*+++-.................:::::::::::
                          ..:-=+======++++++++***+++++**********++****+:.................:::::::::::
                          ....-+++===+**+++++++++++++**********+++****=..................:::::::....
                            . .++++===++++=+++++++++++*++++++++++***++-.............:::::::::::::...
                             . -+++====++-------==========+==+++++***=..............::::::::::::....
                            .. .=+++===+=-------========+==+++******+..............::::::::::::.....
                             . .:=++=++++=-----====++====++++******+: .............::::::::::::.....
                                 .=++++++===------======++++******+=: ...........::::::::::::::.....
                                  :=++++++===------=====+++*****+++=. ...........::::::::::::::.....
                                  .--=+++++===========++++******+++=.............::::::::::::::.....
                                  .--==+++++++====++++++++*****++++=.............:::::::::::::::....
                                  .:--==++++++++++***********++++++=............::::::::::::::::::..
                      ..           :----===++**************+++++=++-............::::::::::::::::::::
                     .... ..   ..:---------====+++****++++++++++==+-:::--===-::...::::::::::::::::::
                   .....  ..:-+**#*-:---------------====+++++==+=====+*#%%%%##*+==-:::::::::::::::::
                ...... ..-+*###%%#+-:--------:::::::--=====++=+==+=====+*#%%%%%%###*+=-:::::::::::::
                     .:=*###%%%*+---:::-------:::::---=====+=============*%%%%%%%%%####*+=-:::::::::
        ........::::-=*###%%%#+-:---:::-:---------:--=======+======+=====#%%%%%%%%%%%####**+=-::::::
  ..:-=+++******++++**##%%%%%#=::---:::::::----:----==+============+====*%%%%%%%%%%%%%%####**++=-:::